Benjamin Otte [Sat, 12 Dec 2015 01:09:01 +0000 (02:09 +0100)]
cssnode: Catch case where a style didn't change
Catch the case where a CSS style did not change and don't emit the
style-changed signal in that case.
This saves not only the emission of the signal, but also doesn't cause
invalidation in child nodes, which would previously get a PARENT_STYLE
Benjamin Otte [Sat, 12 Dec 2015 01:02:04 +0000 (02:02 +0100)]
cssnode: Change style-changed signal
Instead of having old and new style, now have a GtkCssStyleChange opaque
object that will compute the changes you are interested in for you.
This simplifies change signal handlers quite a bit and avoids lots of
repeated computation in every signal handler.
Matthias Clasen [Fri, 11 Dec 2015 22:11:07 +0000 (17:11 -0500)]
inspector: Hide request mode for non-widgets
Only widgets have a request mode.
Lapo Calamandrei [Fri, 11 Dec 2015 20:08:53 +0000 (21:08 +0100)]
Adwaita: menu color change on the dark variant only
Matthias Clasen [Fri, 11 Dec 2015 17:25:31 +0000 (12:25 -0500)]
file chooser: Also apply the settings
I forgot that the settings object we're dealing with here
is in delay mode, so settings won't apply immediately.
Matthias Clasen [Fri, 11 Dec 2015 17:15:03 +0000 (12:15 -0500)]
file chooser: Store size more frequently
We were only storing the dialog size on unmap, but resetting to the
stored default value more often, e.g. on focus-out. This was causing
the dialog to 'jump back' to its remembered size after the user
manually resized it, leading to frustration and bug reports.
Instead, save the dialog size on every ::size-allocate of the toplevel.
To avoid needlessly spamming dconf, only write the new value if it
changed.
Matthias Clasen [Fri, 11 Dec 2015 15:50:25 +0000 (10:50 -0500)]
Add a drag-end callback
This will be helpful in figuring out life-cycle issues
with icon widgets.
Matthias Clasen [Fri, 11 Dec 2015 15:44:46 +0000 (10:44 -0500)]
Add a dnd testcase
This has tests for drag images, widgets, hotspots.
Jonas Ådahl [Tue, 8 Dec 2015 10:19:33 +0000 (18:19 +0800)]
wayland: Implement DND icon hotspot API
In Wayland, the hotspot of a DND icon is set using the buffer offset in
wl_buffer.attach. To implement this, add a private API to cause the
next wl_surface.attach to offset the new buffer with a given offset.
Setting a DND icon hotspot sets this offset while also queuing a redraw
of the window to trigger the wl_surface.attach.
https://bugzilla.gnome.org/show_bug.cgi?id=759168
Georges Basile Stavracas Neto [Fri, 11 Dec 2015 04:28:39 +0000 (02:28 -0200)]
placesviewrow: remove unneeded functions
These function declarations are not used nor implemented
anywhere, so remove them.
Matt Watson [Thu, 10 Dec 2015 23:50:25 +0000 (15:50 -0800)]
gtkstack: remove needless queue_resize
In gtk_stack_set_transition_position we should only need to
queue_resize if we are non-homogeneous, which is already done
earlier in the function.
Georges Basile Stavracas Neto [Tue, 3 Nov 2015 02:50:06 +0000 (00:50 -0200)]
placesview: implement available space
GtkPlacesView is a widget to display locations
in the computer, such as root ("/") and volumes,
separating the persistent devices from removable
ones.
From the latest mockups[1], GtkPlacesView would
display the available space of local drives like
partitions. This, however, is not implemented in
the current codebase.
Fix that by implementing the measurement of disk
space, and adding a new property GtkPlacesView::show-disk-usage
which controls the visibility of measured disks.
[1] https://raw.githubusercontent.com/gnome-design-team/gnome-mockups/master/nautilus/nautilus-next/other-locations.png
https://bugzilla.gnome.org/show_bug.cgi?id=759225
Cosimo Cecchi [Wed, 9 Dec 2015 18:45:26 +0000 (10:45 -0800)]
statusicon: plug memory leak
Lapo Calamandrei [Wed, 9 Dec 2015 17:56:38 +0000 (18:56 +0100)]
Adwaita: make menu bg color the same as popovers
fixes https://bugzilla.gnome.org/show_bug.cgi?id=759260
Lapo Calamandrei [Wed, 9 Dec 2015 16:43:40 +0000 (17:43 +0100)]
Adwaita: another try at color tweakings...
Lapo Calamandrei [Wed, 9 Dec 2015 16:38:38 +0000 (17:38 +0100)]
Adwaita: some more color tweaks and sass simplification
Lapo Calamandrei [Wed, 9 Dec 2015 13:52:03 +0000 (14:52 +0100)]
Adwaita: fix popover styling
...in the process simplified the touch-selection styling, check
and radios not fixed there since I'm going to add proper osd assets
for those (istead of forcing the dark variant assets there as before).
Benjamin Otte [Wed, 9 Dec 2015 12:29:59 +0000 (13:29 +0100)]
iconhelper_ Don't use deprecated functions
Use gtk_widget_get_direction() instead of
gtk_style_context_get_direction().
Benjamin Otte [Tue, 8 Dec 2015 19:57:24 +0000 (20:57 +0100)]
iconhelper: Remove the context argument
Instead, use the widget's context.
Benjamin Otte [Tue, 8 Dec 2015 14:52:35 +0000 (15:52 +0100)]
iconhelper: Get rid of _gtk_icon_helper_set_window()
Instead use the window of the owner widget.
Benjamin Otte [Tue, 8 Dec 2015 14:39:10 +0000 (15:39 +0100)]
iconhelper: Require a widget as construction argument
Note that the caller needs to ensure the widget lives as long as the
iconhelper as the iconhelper will not ref the widget.
Benjamin Otte [Tue, 8 Dec 2015 14:18:55 +0000 (15:18 +0100)]
statusicon: Port from iconhelper to imagedefinition
Benjamin Otte [Tue, 8 Dec 2015 10:27:37 +0000 (11:27 +0100)]
cellrendererpixbuf: Create iconhelper on-demand
Instead of storing one in the priv structure, only store an image
definition there.
This will allow future refactorings of the icon helper.
Benjamin Otte [Mon, 7 Dec 2015 18:49:51 +0000 (19:49 +0100)]
iconhelper: Pass only the CssStyle when loading pixbufs
Benjamin Otte [Mon, 7 Dec 2015 18:47:49 +0000 (19:47 +0100)]
iconhelper: Remove unused GtkStyleContext parameters
Benjamin Otte [Mon, 7 Dec 2015 18:45:55 +0000 (19:45 +0100)]
iconhelper: Pass only the CssStyle when loading iconsets
Benjamin Otte [Mon, 7 Dec 2015 18:22:48 +0000 (19:22 +0100)]
iconfactory: Move private functions into private header
Benjamin Otte [Mon, 7 Dec 2015 03:44:39 +0000 (04:44 +0100)]
iconhelper: Pass only the CssStyle when loading icons
This is the first step in replacing StyleContext usage with CssNode
usage.
Matthias Clasen [Wed, 9 Dec 2015 01:47:21 +0000 (20:47 -0500)]
toolitem: Set a css name
Sébastien Wilmet [Sun, 6 Dec 2015 16:49:01 +0000 (17:49 +0100)]
Don't use gtk_text_iter_begins_tag() (deprecated)
Use gtk_text_iter_starts_tag() instead.
https://bugzilla.gnome.org/show_bug.cgi?id=759092
Sébastien Wilmet [Sun, 6 Dec 2015 16:39:27 +0000 (17:39 +0100)]
textiter: add starts_tag() and deprecate begins_tag()
The name gtk_text_*_begins_* was used only for begins_tag(). All other
similar functions use "starts": starts_line(), starts_word(), etc.
So for consistency, add gtk_text_iter_starts_tag() and deprecate
gtk_text_iter_begins_tag().
Also change (allow-none) to (nullable), to use the new annotation.
https://bugzilla.gnome.org/show_bug.cgi?id=759092
Matthias Clasen [Tue, 8 Dec 2015 18:02:37 +0000 (13:02 -0500)]
Revert "wayland: Implement DND icon hotspot API"
This reverts commit
3ab9d96623bc30678cbffc3bf9ec5133e714e87c.
Pushed prematurely.
Kalev Lember [Tue, 8 Dec 2015 17:51:05 +0000 (18:51 +0100)]
Remove GtkShortcutsGesture from docs
Commit
c83ab24 that dropped GtkShortcutsGesture left in one last reference in
docs; this drops it as well.
Matthias Clasen [Tue, 8 Dec 2015 17:32:00 +0000 (12:32 -0500)]
gtk-demo: Add an example for direction-dependent shortcuts
Jonas Ådahl [Tue, 8 Dec 2015 10:19:33 +0000 (18:19 +0800)]
wayland: Implement DND icon hotspot API
In Wayland, the hotspot of a DND icon is set using the buffer offset in
wl_buffer.attach. To implement this, add a private API to cause the
next wl_surface.attach to offset the new buffer with a given offset.
Setting a DND icon hotspot sets this offset while also queuing a redraw
of the window to trigger the wl_surface.attach.
https://bugzilla.gnome.org/show_bug.cgi?id=759168
Khaled Hosny [Tue, 8 Dec 2015 06:37:51 +0000 (10:37 +0400)]
Update Arabic translation
Kalev Lember [Mon, 7 Dec 2015 16:21:51 +0000 (17:21 +0100)]
headerbar: Don't leak internal widgets
Make sure to clean up internal widgets in destroy, as these aren't
cleaned up when GtkContainer walks the childrens list in
gtk_container_destroy().
This also fixes a gedit crash as reported in
https://bugzilla.redhat.com/show_bug.cgi?id=
1288669
https://bugzilla.gnome.org/show_bug.cgi?id=759132
Matthias Clasen [Tue, 8 Dec 2015 02:57:45 +0000 (21:57 -0500)]
Trivial code restructuring
Matthias Clasen [Tue, 8 Dec 2015 02:54:55 +0000 (21:54 -0500)]
dnd: pass hotspot to GDK
This uses the new api introduced in the previous commits.
Matthias Clasen [Tue, 8 Dec 2015 02:53:38 +0000 (21:53 -0500)]
wayland: Add a dummy implementation of gdk_drag_context_set_hotspot
This just records the hotspot coordinates. Still to do:
apply the hotspot when updating the drag window.
Matthias Clasen [Tue, 8 Dec 2015 02:52:51 +0000 (21:52 -0500)]
x11: Implement gdk_drag_context_set_hotspot
This makes the drag behavior under X11 match what we had previously.
Matthias Clasen [Tue, 8 Dec 2015 02:52:03 +0000 (21:52 -0500)]
gdk: Add api to set drag window hotspot
With GdkDragContext now being in charge of placing the window,
it needs to know about the hotspot to place under the cursor.
Matthias Clasen [Mon, 7 Dec 2015 23:32:57 +0000 (18:32 -0500)]
dnd: Remove an unused struct field
We only have one screen nowadays, so the fallback_icon is
never used.
Carlos Garnacho [Mon, 7 Dec 2015 15:32:15 +0000 (16:32 +0100)]
GtkNotebook: Use gdouble in coordinate calculations
Otherwise rounding errors fool the "tab under coordinates" checks on
crossing events, which will be triggered close enough to the window
rectangle if the pointer moves slowly enough.
With this, the tab_prelight() function correctly figures out we've
moved the pointer outside the tab area when called in
gtk_notebook_leave_notify().
https://bugzilla.gnome.org/show_bug.cgi?id=759091
Adam Reichold [Sun, 6 Dec 2015 10:30:58 +0000 (11:30 +0100)]
Fix method to update menu sensitivity of combo box
After removal of the selectable header and separator from the combo box,
the method to update the menu sensitivity must be changed as it assumes
at least two items within each sub menu and contains special handling
for the separator. Removing this fixes bug #759079.
Matthias Clasen [Mon, 7 Dec 2015 15:11:06 +0000 (10:11 -0500)]
Avoid ugly seams on half-tiled terminals
Since we're no longer doing geometry widgets, don't send
base size and increments to the window manager anymore either.
This avoids an ugly 2 pixel gap to the right and bottom of half-tiled
terminals under gnome-shell.
Matthias Clasen [Mon, 7 Dec 2015 12:04:43 +0000 (07:04 -0500)]
accel cellrenderer: Fix rendering
We were getting the "New Accelerator" text mixed with the
content of the underlying cell, since plain labels don't
have a background. Go back to putting the label in selected
state, and fix the theme to render that white-on-blue. This
was lost when we switched to using a selection sub-node.
Erika [Sun, 6 Dec 2015 14:31:00 +0000 (14:31 +0000)]
Correct annotations for gtk_cell_layout_get_area
The function can return NULL.
https://bugzilla.gnome.org/show_bug.cgi?id=759081
Matthias Clasen [Mon, 7 Dec 2015 04:06:33 +0000 (23:06 -0500)]
inspector: Redo the CSS node page
Showing two lists in a paned was a bit awkward, and space was
getting too limited. Go back to showing just the node list at
first, and make the CSS properties available via a stack. At
the same time, add a right-click context menu to the node list
to make the name and class editing more easily available.
Matthias Clasen [Sun, 6 Dec 2015 22:25:31 +0000 (17:25 -0500)]
inspector: Avoid a crash
gkt_cell_layout_get_area may return NULL, handle it.
Matthias Clasen [Sun, 6 Dec 2015 20:40:59 +0000 (15:40 -0500)]
css node: Some more docs
Matthias Clasen [Sun, 6 Dec 2015 00:18:27 +0000 (19:18 -0500)]
places view: Use names for cursors
Use the standard name for the busy+interactive cursor.
Matthias Clasen [Sun, 6 Dec 2015 00:17:52 +0000 (19:17 -0500)]
entry: Always use cursor names
The names are the preferred API for cursors, so use it.
Matthias Clasen [Sun, 6 Dec 2015 00:09:17 +0000 (19:09 -0500)]
Add a test for required cursors
We use these cursors in GTK+, so check for their existence.
Matthias Clasen [Sat, 5 Dec 2015 23:55:05 +0000 (18:55 -0500)]
Be forgiving if cursors are missing
No need to crash here. Missing cursors are ugly, but we
shouldn't crash.
Matthias Clasen [Sat, 5 Dec 2015 22:09:10 +0000 (17:09 -0500)]
Add more examples to foreigndrawing
Show how to draw checks and radios.
Dušan Kazik [Sat, 5 Dec 2015 19:38:36 +0000 (19:38 +0000)]
Updated Slovak translation
Matthias Clasen [Sat, 5 Dec 2015 19:12:27 +0000 (14:12 -0500)]
entry completion: Reduce the timeout
Pop up the completion window after 100ms. The previous timeout
of 300ms was making completions feel slow.
https://bugzilla.gnome.org/show_bug.cgi?id=758929
Matthias Clasen [Sat, 5 Dec 2015 19:11:06 +0000 (14:11 -0500)]
widget-factory: Add an entry completion
This was missing so far.
Matthias Clasen [Sat, 5 Dec 2015 18:52:09 +0000 (13:52 -0500)]
shortcuts: Another attempt to fix up forall
gtk_window_set_titlebar does not take ownership of the headerbar,
so we need to explicitly destroy it.
Matthias Clasen [Sat, 5 Dec 2015 18:50:26 +0000 (13:50 -0500)]
gtk-demo: Plug a memory leak
Piotr Drąg [Sat, 5 Dec 2015 18:27:32 +0000 (19:27 +0100)]
Updated POTFILES.in
Matthias Clasen [Sat, 5 Dec 2015 17:09:16 +0000 (12:09 -0500)]
Remove GtkShortcutsGesture
The gesture functionality was taken over by GtkShortcutsShortcut,
so this widget is no longer needed, and it never was in a stable
release, so lets get rid of it.
Lapo Calamandrei [Sat, 5 Dec 2015 16:55:38 +0000 (17:55 +0100)]
Adwaita: simpler active switch background
...removing the progressbar_fill mixin in the process.
Lapo Calamandrei [Sat, 5 Dec 2015 16:52:37 +0000 (17:52 +0100)]
Adwaita: first stab at some visual updates
Piotr Drąg [Sat, 5 Dec 2015 14:28:17 +0000 (15:28 +0100)]
Updated Polish translation
Wolfgang Stöggl [Sat, 5 Dec 2015 12:18:51 +0000 (12:18 +0000)]
Updated German translation
Pedro Albuquerque [Sat, 5 Dec 2015 07:48:40 +0000 (07:48 +0000)]
Updated Portuguese translation
Pedro Albuquerque [Sat, 5 Dec 2015 07:46:31 +0000 (07:46 +0000)]
Updated Portuguese translation
Matthias Clasen [Fri, 4 Dec 2015 16:29:27 +0000 (11:29 -0500)]
3.19.4
Matthias Clasen [Fri, 4 Dec 2015 21:59:29 +0000 (16:59 -0500)]
Fix make check
GtkFontChooserWidget is using a GThemedIcon in its template,
so we need to ensure that the type is registered before
loading it. This was causing the defaultvalue test to fail.
Lionel Landwerlin [Fri, 4 Dec 2015 21:02:36 +0000 (21:02 +0000)]
adwaita: fix property spelling mistake
https://bugzilla.gnome.org/show_bug.cgi?id=759048
Timm Bäder [Fri, 4 Dec 2015 19:38:31 +0000 (20:38 +0100)]
GtkEntry: Recompute in text-inserted/text-deleted
The text-inserted/text-deleted handlers rely on the cursor positions
being unadjusted after the text change, so we can't do it in
buffer_notify_text.
Matthias Clasen [Fri, 4 Dec 2015 18:17:37 +0000 (13:17 -0500)]
testsuite: Fix notify tests
GtkStatusIcon tests don't work well under xwayland either, so just
skip them unconditionally.
GtkEntry now fails because the update of the im-module is no longer
deferred to an idle, and (gtk-im-simple) is not a valid module
name, so skip this property.
Matthias Clasen [Fri, 4 Dec 2015 18:16:35 +0000 (13:16 -0500)]
shortcut label: Tweak modifier key rendering
The subscript was affecting the vertical alignment too much,
so tweak the rendering of the L/R markers to avoid that. Also,
mark these as translatable.
Matthias Clasen [Fri, 4 Dec 2015 18:13:38 +0000 (13:13 -0500)]
Add a css name to GtkShortcutsShortcut
This will be useful for tweaking the gesture image details,
among other things.
Lapo Calamandrei [Fri, 4 Dec 2015 18:04:17 +0000 (19:04 +0100)]
Adwaita: added back progressbar.osd style
Lapo Calamandrei [Fri, 4 Dec 2015 17:47:28 +0000 (18:47 +0100)]
Adwaita: fix scales with marks on the dark variant
Lapo Calamandrei [Fri, 4 Dec 2015 17:42:56 +0000 (18:42 +0100)]
Adwaita: slight color tweaks
Benjamin Otte [Fri, 4 Dec 2015 16:43:36 +0000 (17:43 +0100)]
reftests: Add test for missing-image handling
Add a test that ensures that missing images get the icon-effect properly
applied.
Benjamin Otte [Fri, 4 Dec 2015 16:42:35 +0000 (17:42 +0100)]
iconhelper: Fold function into callers
The function takes so many arguments and is so short that it's not worth
keeping.
Benjamin Otte [Fri, 4 Dec 2015 15:55:02 +0000 (16:55 +0100)]
iconhelper: Apply icon-effect directly
Instead of creating an icon source, making sure no state is set and
therefore the icon-effect will be applied and then rendering that icon
source, just call the icon-effect apply function.
Also, the new way isn't deprecated.
Benjamin Otte [Fri, 4 Dec 2015 15:53:50 +0000 (16:53 +0100)]
css: Leftover renaming gtk-image-effect => icon-effect
The previous renaming commit was incomplete, so here we go again.
Benjamin Otte [Fri, 4 Dec 2015 15:35:58 +0000 (16:35 +0100)]
render: Split out icon-effect apply function
Benjamin Otte [Fri, 4 Dec 2015 15:18:23 +0000 (16:18 +0100)]
iconhelper: Return surface from icon-effect function
All the callers where converting to a surface anyway.
Benjamin Otte [Fri, 4 Dec 2015 15:13:22 +0000 (16:13 +0100)]
iconhelper: Refactor missing icon handling
In particular, stop using deprecated code for loading the missing image
icon.
Benjamin Otte [Fri, 4 Dec 2015 15:06:08 +0000 (16:06 +0100)]
iconhelper: Fold function into only caller
Benjamin Otte [Fri, 4 Dec 2015 14:25:49 +0000 (15:25 +0100)]
iconfactory: Drop caching infrastructure
- icon sets are essentially unused
- the icon theme does caching
- this code complicates the restructuring I'm about to do
=> Delete it!
William Hua [Fri, 4 Dec 2015 16:17:43 +0000 (11:17 -0500)]
mir: remove deprecated function call
Matthias Clasen [Fri, 4 Dec 2015 15:55:20 +0000 (10:55 -0500)]
shortcuts: Extend the accelerator syntax more
Cover cases like left+right control, and render them nicely.
The gtk3-demo builder shortcuts example shows the new
possibilities.
Olivier Fourdan [Fri, 4 Dec 2015 10:25:50 +0000 (11:25 +0100)]
wayland: fix testtooltips
On Wayland, for tooltips to work as expected, the type hint must be set
to tooltips, otherwise the popup window won't be translated as a
subsurface.
Fix the test do work as expected under Wayland.
Bugzilla: https://bugzilla.gnome.org/show_bug.cgi?id=759018
Lionel Landwerlin [Wed, 2 Dec 2015 01:41:07 +0000 (01:41 +0000)]
gdkoffscreenwindow: use embedder to derive surfaces & scale factor
In Gdk, a GdkOffscreenWindow parent has to be the root window. This is
problematic on Wayland because the root window doesn't necessary have the
right information with regard to scale factor.
This patch proposes to rely on the embedder, if available, to derive
surfaces as well as getting the scale factor.
https://bugzilla.gnome.org/show_bug.cgi?id=758936
Timm Bäder [Thu, 3 Dec 2015 19:20:58 +0000 (20:20 +0100)]
GtkEntry: nullable annotations
Timm Bäder [Thu, 3 Dec 2015 18:32:56 +0000 (19:32 +0100)]
GtkEntry: Return proper constants from signal handlers
Timm Bäder [Thu, 3 Dec 2015 17:27:47 +0000 (18:27 +0100)]
GtkTreeModel: Remove erroneous transfer annotation
Timm Bäder [Thu, 3 Dec 2015 17:14:45 +0000 (18:14 +0100)]
GtkEntry: Remove recompute idle
Just do it directly
Timm Bäder [Thu, 3 Dec 2015 17:10:54 +0000 (18:10 +0100)]
GtkEntry: Remove unused fields
Lapo Calamandrei [Thu, 3 Dec 2015 18:28:57 +0000 (19:28 +0100)]
Adwaita: some OSD rationalization
taking care of https://bugzilla.gnome.org/show_bug.cgi?id=732528 in
the process, any toolbar.osd with a positional style class attached
gets squared corners now.
Lapo Calamandrei [Thu, 3 Dec 2015 17:39:19 +0000 (18:39 +0100)]
Adwaita: scale with marks styling
I'm really sorry for the unlucky ones who would have to read that
code...
Lapo Calamandrei [Thu, 3 Dec 2015 15:18:12 +0000 (16:18 +0100)]
Adwaita: added back scale marks style